//
//  PPSystemConfiguraton.h
//  PetParadise
//
//  Created by 陈无忌 on 8/1/14.
//  Copyright (c) 2014 whalefin. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "PPPetInfo.h"
#import "PPTopic.h"
#import "PPCirclePush.h"
#import "PPConversation.h"
#import "PPApplyNotification.h"
#import "PPUserSetting.h"
#import "BMapKit.h"
#import <AKLocationManager/AKLocationManager.h>
#import <CoreData/CoreData.h>
#import "supportingHeadFiles.h"

typedef void (^CompletionBlock)(void);

@interface PPSystemConfiguraton : NSObject

@property (nonatomic, assign) double locationPosLatitude;
@property (nonatomic, assign) double locationPosLongitude;
@property (nonatomic, strong) PPUserInfo *userInfo;
@property (nonatomic, strong) PPUserSetting *userSetting;
@property (nonatomic) BOOL isLogin;
@property (nonatomic) BOOL isEaseMobLogin;
//用户宠物列表
@property (nonatomic, strong) NSMutableArray *petsArray;
//用户话题信息
@property (nonatomic, strong) NSMutableArray *topicArray;
//用户好友列表
@property (nonatomic, strong) NSMutableArray *friendArray;
//用户收到的通知列表
@property (nonatomic, strong) NSMutableArray *applyArray;
//用户会话列表
@property (nonatomic, strong) NSMutableArray *conversationArray;
//用户宠友圈消息
@property (nonatomic, strong) NSMutableArray *circleArray;
//官方关键字选项
@property (nonatomic, strong) NSMutableArray *keywordArray;
//官方置顶动态
@property (nonatomic, strong) PPTopic *officeTopic;

//相机授权
@property (nonatomic) BOOL isCameraValid;
//百度推送APPID
@property (nonatomic, strong) NSString *pushId;

+(PPSystemConfiguraton *)sharedSystemConfiguration;
@property (nonatomic, strong) NSUserDefaults *userDefault;

+(void)clearShared;
//保存用户名密码 用于自动登录
-(void)saveLoginUserName:(NSString*)userName AndPassword:(NSString*)password autoLogin:(BOOL)isAutoLogin;
//修改密码
-(void)reSetPassWord:(NSString *)password;


//set distance
-(void)changeDistance:(float)distance;
//set iBeacon
-(void)setBeaconStaus:(BOOL)flag;



//从服务器重新获取用户信息 并同步到本地
- (void)getUserInfowithComepletion:(CompletionBlock)completionBlock;
- (void)getUserSettingwithCompletion:(CompletionBlock)completionBlock;
- (void)getFriendListwithComepletion:(CompletionBlock)completionBlock;
- (void)getApplyListwithComepletion:(CompletionBlock)completionBlock;
- (void)getConversationListwithComepletion:(CompletionBlock)completionBlock;
- (void)getPetListwithComepletion:(CompletionBlock)completionBlock;
- (void)getTopicListwithComepletion:(CompletionBlock)completionBlock;
- (void)getCirclePushListwithCompletion:(CompletionBlock)completionBlock;
- (void)getKeyWord;
- (void)getOfficeTopic;


@end
